Bidirectional Heuristic
نویسندگان
چکیده
The assessment of bidirectional heuristic search has been incorrect since it was rst published more than a quarter of a century ago. For quite a long time, this search strategy did not achieve the expected results, and there was a major misunderstanding about the reasons behind it. Although there is still wide-spread belief that bidirectional heuristic search is a icted by the problem of search frontiers passing each other, we demonstrate that this conjecture is wrong. Based on this nding, we present both a new generic approach to bidirectional heuristic search and a new approach to dynamically improving heuristic values that is feasible in bidirectional search only. These approaches are put into perspective with both the traditional and more recently proposed approaches in order to facilitate a better overall understanding. Empirical results of experiments with our new approaches show that bidirectional heuristic search can be performed very e ciently and also with limited memory. These results suggest that bidirectional heuristic search appears to be better for solving certain di cult problems than corresponding unidirectional search. This provides some evidence for the usefulness of a search strategy that was long neglected. In summary, we show that bidirectional heuristic search is viable and consequently propose that it be reconsidered. 1. Background and Introduction When a problem is represented as a state space graph, solutions to such a problem are paths from a given start node s to some goal/target node t. Finding such a solution can be attempted by searching this graph. If the search is guided by heuristic information, it is called a heuristic search. Most of the work on heuristic search for problem solving deals with unidirectional approaches, that start from s heading towards some node t (see, e.g., Pearl, 1984). When there is one goal node t explicitly given and the search operators are reversible, bidirectional search is possible, which proceeds both in the forward direction from s to t and in the backward direction from t to s (see, e.g., Nilsson, 1980). Strictly speaking, it is not even required that operators have inverses. It is just necessary that for a given node n the set of parent nodes pi can be determined for which there exist operators that lead from pi to n. Searching backwards means generating parent nodes successively from the goal node t (see, e.g., Russell & Norvig, 1995). In other words, backward search implements reasoning about the operators in the backward direction. As an illustrating example of a class of problems where bidirectional search can be usefully applied, consider nding nd a shortest path between two given places s and t using a given map of some city. In case of one-way streets, bidirectional search implements c 1997 AI Access Foundation and Morgan Kaufmann Publishers. All rights reserved.
منابع مشابه
Limitations of Front-To-End Bidirectional Heuristic Search
We present an intuitive explanation for the limited effectiveness of front-to-end bidirectional heuristic search, supported with extensive evidence from many commonly-studied domains. While previous work has proved the limitations of specific algorithms, we show that any front-to-end bidirectional heuristic search algorithm will likely be dominated by unidirectional heuristic search or bidirect...
متن کاملBidirectional Heuristic Search Reconsidered
The assessment of bidirectional heuristic search has been incorrect since it was rst published more than a quarter of a century ago. For quite a long time, this search strategy did not achieve the expected results, and there was a major misunderstanding about the reasons behind it. Although there is still widespread belief that bidirectional heuristic search is aaicted by the problem of search ...
متن کاملYet another bidirectional algorithm for shortest paths
For finding a shortest path in a network the bidirectional A* algorithm is a widely known algorithm. An A* instance requires a heuristic estimate, a real-valued function on the set of nodes. The version of bidirectional A* that is considered the most appropriate in literature hitherto, uses so-called balanced heuristic estimates. This means that the two estimates of the two directions are in ba...
متن کاملA new bidirectional algorithm for shortest paths
For finding a shortest path in a network the bidirectional A* algorithm is a widely known algorithm. An A* instance requires a heuristic estimate, a real-valued function on the set of nodes. The version of bidirectional A* that is considered the most appropriate in literature hitherto, uses so-called balanced heuristic estimates. This means that the two estimates of the two directions are in ba...
متن کاملFront-to-End Bidirectional Heuristic Search with Near-Optimal Node Expansions
It is well-known that any admissible unidirectional heuristic search algorithm must expand all states whose f -value is smaller than the optimal solution cost when using a consistent heuristic. Such states are called “surely expanded” (s.e.). A recent study characterized s.e. pairs of states for bidirectional search with consistent heuristics: if a pair of states is s.e. then at least one of th...
متن کاملRobust Bidirectional Search via Heuristic Improvement
Although the heuristic search algorithm A* is well-known to be optimally efficient, this result explicitly assumes forward search. Bidirectional search has long held promise for surpassing A*’s efficiency, and many varieties have been proposed, but it has proven difficult to achieve robust performance across multiple domains in practice. We introduce a simple bidirectional search technique call...
متن کامل